Computers have become an integral part of society. Every day people become more dependent on this technology to facilitate both work and also leisure activities. They typically consist of “hardware” and “software.” The hardware is the physical components of the computer while the software constitutes “programs” that are run on the computer. Examples of some common programs include word processors, spreadsheets, and email programs. In general, a user can typically use these programs to some extent. Basic features might be intuitive and require little training to use. However, at some point, the user of the program will run into a task that they are unable to complete without help. Rather than provide a “live” operator to answer questions, most software programs include an “assistant” that helps the user when they become stuck on a problem. General forms of an assistant include help indexes with search support, common problems encountered, and/or user specific solutions and the like.
An effective way of building the assisting program is using a platform commonly known as an “assistant platform.” The assistant platform or “AP” typically provides a user interface that allows the user to look up answers and/or actually pose questions so that the AP can provide an answer. During these user queries, data is collected by the AP as to the adequacy and/or relevancy and the like of the AP response to a user's query. This information is then analyzed, compiled, and generated into diagnostic reports that contain one or more suggestions for improving the AP. The AP typically has a search authoring tool user interface that allows an author of the software program to retrieve the diagnostic reports. The author desires to improve the AP so that a user will become more satisfied with it and not become frustrated by unhelpful suggestions to a problem. Thus, the author reviews the diagnostic reports and their suggestions. It is possible that the author may encounter several hundred or even thousand diagnostic reports for a popular program utilized by many users. The author typically must sort through the list of reports and determine which reports are worth reviewing and taking actions on. This is a very time consuming task and is often accomplished using a computing device so that the author can remark each suggestion.
It is easily imaginable that if the diagnostic list is extremely long, that some reports will not be reviewed and that insignificant suggestions or incorrect suggestions might be reviewed in detail before they are properly assessed, substantially reducing the author's productivity and performance. The difficulty of the reviewing process is further compounded by the fact that in some situations the proper content existed in the AP, but the user's intent was misinterpreted, while in other situations, the user's intent was properly assessed but the correct information was not available to the AP. Thus, different situations can require different solutions to resolve. For these reasons, difficult and time consuming situations may be put aside until the easier suggestions are implemented first. Therefore, the author's workload is dictating priority rather than a true priority based on the significance of the suggestions provided by the AP.
The result of large quantities of suggestions and complex user intent problems is a poorly improved AP. This causes an increase in user dissatisfaction with the software product, possibly generating even more diagnostic reports and/or decreasing sales of the software product itself. Unfortunately, this is a typical scenario for many APs and their authors. Similar problems can also occur with non-typical software programs as well. For example, it is common today to find computers and software in automobiles as well as other machinery. These types of software can also generate diagnostic reports that need to be reviewed by an author as well. Thus, as programs become even more sophisticated, the need for assistance to the user and/or even to other interfacing devices (e.g., an artificial intelligence device and the like) will only increase as well, burdening reviewing entities even more and greatly decreasing user satisfaction. If a business is dependent on the proper operation of a program, the user's inability to make the program perform effectively could also severely impact business' profits.